<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>全局自定义指令——输入框自动获得焦点</title>
</head>
<body>
<div id="app">
    <label for="wd">
        请输入要搜索内容
        <input type="text" name="wd" v-focus="false">
    </label>

    <!--  注意事项：green 是一个字符串，不应该是变量  -->
    <h2 v-highlight="'green'">Hello, World!</h2>
    <h2 v-highlight="green">使用变量设置背景颜色</h2>

</div>

<script type="module">
    import {createApp, ref} from "../../../../js/vue.esm-browser.js";

    let app = createApp(
        {
            setup() {
                let green = "green"
                return {
                    green,
                }
            },
            directives: {
                "focus":
                    {
                        // el 指令所绑定的元素，可以用来获得 DOM元素
                        // binding 一个对象，包含多个属性，用来接收属性的参数值
                        mounted(el, binding) {
                            if (binding.value)
                                // focus 函数的作用：获得输入焦点
                                el.focus()
                        }
                    },
                "highlight":
                    {
                        created(el, binding) {
                            // el.style.backgroundColor = "yellow"
                            el.style.backgroundColor = binding.value
                        }
                    }
            }
        }
    )

    /*    app.directive(
            "focus",
            {
                // el 指令所绑定的元素，可以用来获得 DOM元素
                // binding 一个对象，包含多个属性，用来接收属性的参数值
                mounted(el, binding) {
                    if (binding.value)
                        // focus 函数的作用：获得输入焦点
                        el.focus()
                }
            }
        )*/

  /*  app.directive(
        "highlight",
        {
            created(el, binding) {
                // el.style.backgroundColor = "yellow"
                el.style.backgroundColor = binding.value
            }
        }
    )*/

    app.mount("#app")
</script>
</body>
</html>